package com.zsrt.java.day20161227.wrl.homework.demo02;

/**
 * 福利彩票  000~999
 * @author Administrator
 *
 */
public class Welfare02 {
	

	/**
	 * 	  	福利彩票  000~999
	 * --1.					--2				--3
	 * 456/100	  = 4	15/100	  = 0		5/100	 = 0
	 * 456%100/10 = 5	15%100/10 = 1		5%100/10 = 0
	 * 456%10 	  = 6	15%10     = 5		5%10 	 = 5
	 * 
	 * 已知：
	 * 	    1.自己的号码
	 * 求：
	 * 	跟随机生成的号码是否相同
	 * 		相同：中奖
	 * 		不同：不中奖
	 * 分析：
	 * 	1.输入号码，析出3个数字
	 * 	2.用数组接收数字
	 *  3.生成随机数
	 *  4.提取数组中的数字
	 *  5.比较随机数与你输入的数字是否一样
	 *  
	 * @param num	号码
	 * @return	boolean
	 */
	public static boolean welfare(String num){
		 System.out.println("你输入的号码是："+num);
		 
		//1.生成随机数
		int ran = (int)(Math.random()*1000);
		System.out.println(ran);
		
		//2.析出3个数字
		int one   = oneNum(ran);
		int two   = twoNum(ran);
		int three = threeNum(ran);
				
		//3.用数组接收数字
		int[] arrs = receiveNumber(one,two,three);
		
		//4.提取数组中的数字
		String strNum = "";
		for(int v : arrs ){
			strNum = strNum+v;
		}
		
		//5.比较随机数与你输入的数字是否一样
		if(strNum.equals(num)){
			return true;
		}else{
			return false;
		}
	}
	
	public static int[] receiveNumber(int... arrs) {		
		//把该数字的各位数字析出并存放到数组中
		int[] arrays = new int[arrs.length];
		for (int i = 0; i < arrs.length; i++) {
			arrays[i] = arrs[i];
		}	
		return arrays;
//		System.out.println(Arrays.toString(arrays));
	}
	
	/**
	 * 接收第一个数字
	 * @param num	参数
	 * @return	第一个数字
	 */
	public static int oneNum(int num) {
		return num/100;
	}
	
	public static int twoNum(int num) {
		return num%100/10;
	}
	
	public static int threeNum(int num) {
		return num%10;
	}

}
